Most video encoding and decoding systems operate on data representing video using a 4:2:0 color space. The 4:2:0 color space is useful when employed for display of movies and TV shows, however, greater definition and detail is possible with a 4:4:4 color space, such as may be desirable for computer graphic information type video. Such 4:4:4 color space for video encoding/decoding, however, has not been possible with many systems because often the encoder and decoder hardware and software operates only on video in the 4:2:0 color space. The systems and methods of this invention provide for rendering 4:4:4 color space video, using encoders and decoders that only support the 4:2:0 color space.
As will be understood, video and/or display graphics, such as that communicated from one point (or node or computer or device) to another point (or node or computer or device) on a network, is encoded by the sender and then decoded by the recipient. This can reduce the quantity of data that must be communicated and thereby reduces the bandwidth required for the communication. Typical video encoding and decoding technical standards include MPEG1, MPEG2, H.263, VC-1 and H.264. These encoding and decoding standards are similarly processed by encoders and decoders of devices, e.g., processed manipulation, copying and handling of files and frames of files are similar in encode and decode processing operations.
Traditionally, the encoders and decoders, and their respective processes, have been employed for communicating movie and TV type video over networks. Because of the nature of this type of video, the data representing the video has employed the 4:2:0 color space for purpose of encoding and decoding. Other color space types such as 4:4:4 color space, however, can provide more desirable results for certain communications, for example, for communications of computer graphics type information video such as frame buffer output from a spreadsheet or browser program to a remote display.
A conventional video encode and decode process for input and output in the 4:4:4 color space converts from 4:4:4 color space to 4:2:0 color space, encodes, decodes and then converts back to 4:4:4 color space. In particular, a 4:4:4 frame buffer is translated to a 4:2:0 frame by a converter. The 4:2:0 frame is then encoded to obtain an encoded video bit stream. The encoded video bit stream is passed, such as via network communication, to a video decoder. The video decoder creates a 4:2:0 frame. This 4:2:0 frame is converted back into a 4:4:4 frame by a next converter, and the frame is saved into a 4:4:4 frame buffer. This results in an averaging of pixels for the resulting 4:4:4 color space of the 4:4:4 frame buffer. This averaging of pixels in the convention version between 4:4:4 and 4:2:0 color spaces results in lessened definition and detail in rendered 4:4:4 color space displays at the decoder, in comparison to that of the original graphic displayed at the encoder.
A better video and display solution which would be desirable for many applications in the 4:4:4 color space, which does not rely on averaging of pixels. It would be advantageous to avoid averaging operations, particularly, where the pixel data represent computer graphics type video and displays, such as with spreadsheets, other types of computer generated graphics, computer game graphics, or other exacting detail and color is desirable. Although certain video encoder/decoder systems have dedicated elements for operating with 4:4:4 color space video, these are uncommon and, in any event, are not widely employed.
It would therefore be desirable, and a significant improvement in the art and technology, to provide encoders and decoders for converting video from one color space format to another, with new and improved color and graphical display.